import { Subscription } from "egg";

export default class JxcTimingTask extends Subscription {
  // 通过 schedule 属性来设置定时任务的执行间隔等配置
  static get schedule() {
    return {
      cron: "0 0 1 1 * ?", // 每月1号凌晨1点执行一次：0 0 1 1 * ?
      //  worker类型：每台机器上只有一个 worker 会执行这个定时任务，每次执行定时任务的 worker 的选择是随机的。
      // all 类型：每台机器上的每个 worker 都会执行这个定时任务
      type: "worker",
      disable: true, // 配置该参数为 true 时，这个定时任务不会被启动
    };
  }

  // subscribe 是真正定时任务执行时被运行的函数
  async subscribe() {
    const { ctx } = this;
    const _year = new Date().getFullYear();
    const _mounth = new Date().getMonth() + 1;
    await ctx.service.report.getSellData({
      drug_name: "",
      standard: "",
      level: 1,
      time: `${_year}-${_mounth}`,
    });
  }
}
